Systems and methods for designing a sequence for code modulation of data and channel estimation

ABSTRACT

A method for using a numerical method to design a sequence for code modulating data is described. An input multiple input multiple output signal is determined. A nearest tight frame to one or more given structured vectors is obtained. One or more structured vectors is obtained from the nearest tight frame. The one or more structured vectors is projected onto the space of circulant matrices. One or more classes of matrices that indicates the design of the sequence is outputted. Data is code modulated using the designed sequence.

TECHNICAL FIELD

The present invention relates generally to wireless communications and wireless communications-related technology. More specifically, the present invention relates to systems and methods that design a sequence for code modulation of data and channel estimation.

BACKGROUND

A wireless communication system typically includes a base station in wireless communication with a plurality of user devices (which may also be referred to as mobile stations, subscriber units, access terminals, etc.). The base station transmits data to the user devices over a radio frequency (RF) communication channel. The term “downlink” refers to transmission from a base station to a user device, while the term “uplink” refers to transmission from a user device to a base station.

Orthogonal frequency division multiplexing (OFDM) is a modulation and multiple-access technique whereby the transmission band of a communication channel is divided into a number of equally spaced sub-bands. A sub-carrier carrying a portion of the user information is transmitted in each sub-band, and every sub-carrier is orthogonal with every other sub-carrier. Sub-carriers are sometimes referred to as “tones.” OFDM enables the creation of a very flexible system architecture that can be used efficiently for a wide range of services, including voice and data. OFDM is sometimes referred to as discrete multi-tone transmission (DMT).

The 3^(rd) Generation Partnership Project (3GPP) is a collaboration of standards organizations throughout the world. The goal of 3GPP is to make a globally applicable third generation (3G) mobile phone system specification within the scope of the IMT-2000 (International Mobile Telecommunications-2000) standard as defined by the International Telecommunication Union. The 3GPP Long Term Evolution (“LTE”) Committee is considering OFDM as well as OFDM/OQAM (Orthogonal Frequency Division Multiplexing/Offset Quadrature Amplitude Modulation), as a method for downlink transmission, as well as OFDM transmission on the uplink.

Wireless communications systems (e.g., Time Division Multiple Access (TDMA), Orthogonal Frequency-Division Multiplexing (OFDM)) usually calculate an estimation of a channel impulse response between the antennas of a user device and the antennas of a base station for coherent receiving. Channel estimation may involve transmitting known reference signals that are multiplexed with the data. Reference signals may include a single frequency and are transmitted over the communication systems for supervisory, control, equalization, continuity, synchronization, etc. Wireless communication systems may include one or more mobile stations and one or more base stations that each transmits a reference signal. In addition, wireless communication systems may transmit channel quality information (CQI), acknowledgment reports (ACK) and negative acknowledgment reports (NAK). The CQI and the ACK/NAK may be modulated (or covered) by a sequence that ideally orthogonalizes the CQI and the ACK/NAK. However, covered CQI and ACK/NAK from other systems may introduce interference. As such, benefits may be realized from systems and methods that design a sequence for code modulation of data as well as channel estimation.

BRIEF DESCRIPTION OF THE DRAWINGS

Exemplary embodiments of the invention will become more fully apparent from the following description and appended claims, taken in conjunction with the accompanying drawings. Understanding that these drawings depict only exemplary embodiments and are, therefore, not to be considered limiting of the invention's scope, the exemplary embodiments of the invention will be described with additional specificity and detail through use of the accompanying drawings in which:

FIG. 1 illustrates an exemplary wireless communication system in which embodiments may be practiced;

FIG. 2 illustrates some characteristics of a transmission band of an RF communication channel in accordance with an OFDM-based system;

FIG. 3 illustrates communication channels that may exist between an OFDM transmitter and an OFDM receiver according to an embodiment;

FIG. 4 is a diagram illustrating one embodiment of covering channel quality information (CQI) and acknowledgement and negative acknowledgement reports (ACK/NAK) in accordance with the present systems and methods;

FIG. 5 illustrates a block diagram of certain components in an embodiment of a transmitter;

FIG. 6 is a block diagram illustrating one embodiment of components used to design an Optimized Zadoff-Chu Like (OZCL) sequence;

FIG. 7 is a flow diagram illustrating one embodiment of a method for designing an OZCL sequence;

FIG. 8 is a flow diagram illustrating a further embodiment of an algorithm that may be utilized to design an OZCL sequence;

FIG. 9 is a flow diagram illustrating a method of an algorithm that may be utilized to design an OZCL sequence; and

FIG. 10 illustrates various components that may be utilized in a communications device.

DETAILED DESCRIPTION

A method for using a numerical method to design a sequence for code modulating data is described. An input multiple input multiple output signal is determined. A nearest tight frame to one or more given structured vectors is obtained. One or more structured vectors is obtained from the nearest tight frame. The one or more structured vectors is projected onto the space of circulant matrices. One or more classes of matrices that indicates the design of the sequence is outputted. Data is code modulated using the designed sequence.

In one embodiment, the data comprises channel quality information. The data may comprise acknowledgement reports and negative acknowledgement reports. The code modulated data may be orthogonal in a cell. In one embodiment, the designed sequence is identical to a sequence used for estimation of a channel.

The data may be code modulated using Code Division Multiple Access (CDMA) implementations. A set of sequences may comprise a Peak to Average Power Ratio that approximates the value of one. The set of sequences may be recursively generated from a base sequence. The code modulated data may be transmitted in a Discrete Fourier Transform Spread Orthogonal Frequency Division Multiplexing system. The designed sequence may be hopped to reduce effects of cross-correlation with one or more additional sequences. The designed sequence may comprise a cyclic shift orthogonal sequence.

A device that is configured to use a numerical method to design a sequence for code modulating data is also described. The device comprises a processor and memory in electronic communication with the processor. Instructions are stored in the memory. An input multiple input multiple output signal is determined. A nearest tight frame to one or more given structured vectors is obtained. One or more structured vectors is obtained from the nearest tight frame. The one or more structured vectors is projected onto the space of circulant matrices. One or more classes of matrices that indicates the design of the sequence is outputted. Data is code modulated using the designed sequence.

A computer-readable medium comprising executable instructions for using a numerical method to design a sequence for code modulating data is also described. An input multiple input multiple output signal is determined. A nearest tight frame to one or more given structured vectors is obtained. One or more structured vectors is obtained from the nearest tight frame. The one or more structured vectors is projected onto the space of circulant matrices. One or more classes of matrices that indicates the design of the sequence is outputted. Data is code modulated using the designed sequence.

Various embodiments of the invention are now described with reference to the Figures, where like reference numbers indicate identical or functionally similar elements. The embodiments of the present invention, as generally described and illustrated in the Figures herein, could be arranged and designed in a wide variety of different configurations. Thus, the following more detailed description of several exemplary embodiments of the present invention, as represented in the Figures, is not intended to limit the scope of the invention, as claimed, but is merely representative of the embodiments of the invention.

The word “exemplary” is used exclusively herein to mean “serving as an example, instance, or illustration.” Any embodiment described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments.

Many features of the embodiments disclosed herein may be implemented as computer software, electronic hardware, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various components will be described generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.

Where the described functionality is implemented as computer software, such software may include any type of computer instruction or computer executable code located within a memory device and/or transmitted as electronic signals over a system bus or network. Software that implements the functionality associated with components described herein may comprise a single instruction, or many instructions, and may be distributed over several different code segments, among different programs, and across several memory devices.

As used herein, the terms “an embodiment”, “embodiment”, “embodiments”, “the embodiment”, “the embodiments”, “one or more embodiments”, “some embodiments”, “certain embodiments”, “one embodiment”, “another embodiment” and the like mean “one or more (but not necessarily all) embodiments of the disclosed invention(s)”, unless expressly specified otherwise.

The term “determining” (and grammatical variants thereof) is used in an extremely broad sense. The term “determining” encompasses a wide variety of actions and therefore “determining” can include calculating, computing, processing, deriving, investigating, looking up (e.g., looking up in a table, a database or another data structure), ascertaining and the like. Also, “determining” can include receiving (e.g., receiving information), accessing (e.g., accessing data in a memory) and the like. Also, “determining” can include resolving, selecting, choosing, establishing and the like.

The phrase “based on” does not mean “based only on,” unless expressly specified otherwise. In other words, the phrase “based on” describes both “based only on” and “based at least on.”

In 3GPP Long Term Evolution, channel quality information (CQI), acknowledgment (ACK) reports and negative acknowledgment (NAK) reports may be transmitted from a mobile station (i.e., handset, User Equipment (UE), etc.) to a base station (i.e., node B). A Zadoff-Chu (ZC) sequence, or a similar Constant Amplitude Zero Auto Correlation (CAZAC) sequence, may be used to code division modulate the CQI and the ACK/NAK. The length of the ZC sequence may be twelve or a multiple of twelve.

Reference signals may also be used in communication systems. Reference signals may include a single frequency and are transmitted over the communication systems for supervisory, control, equalization, continuity, synchronization, etc. Communication systems may include one or more mobile stations and one or more base stations that each transmits a reference signal. Reference signals may be used to estimate a channel. As such, the ZC sequence may be referred to as a covering sequence while the reference signal may be referred to as a channel estimation sequence.

In a synchronized system, all mobile stations may send the CQI and the ACK/NAK in a relatively efficient manner. For example, the purpose of the modulation performed by the ZC sequence is to decorrelate (and ideally orthogonalize in a given cell) the CQI and the ACK/NAK information. However, in a synchronized system, many mobile stations may be transmitting at the same time. In one embodiment, twelve mobile stations may be transmitting at the same time in any one cell. Mobile stations from adjacent cells may introduce interference.

If ZC sequences, as described above, are used to cover the CQI and ACK/NAK information, then outside of the shifts of base sequences the only minimally correlated sequences would be those sequences that are relatively prime. For example, if c_(n) ^(M) ¹ ={e^(j2pin(n+1)M) ¹ ^(/N)}, and c_(n) ^(M) ² ={e^(j2pin(n+1)M) ² ^(/N)} then <c_(n) ^(M) ² , c_(n) ^(M) ¹ > will be minimally correlated with a correlation of 1/N^(−1/2) if M₁ and M₂ are relatively prime to each other. In one embodiment, there are only 48 possible sequences with this property. In addition, Walsh signal sequences are limited as well for code modulating this information.

The present systems and methods describe OZCL sequences that may be used for the purpose of providing an orthogonal cover to CQI and ACK/NACK data. In some versions of 3GPP Long Term Evolution, sequence hopping occurs to randomize the effects of sequence cross-correlation. In a similar manner, the covering sequence designed by the present systems and methods is also hopped to randomize the effects of sequence cross-correlation. In one embodiment, the sequence used for channel estimation, such as a reference signal sequence, would also be the same sequence used for CQI and ACK/NAK covering.

In designing a set of reference signals (or OZCL sequences), certain design considerations may be implemented. For example, the set may be large enough to cover at least three sectors per cell, with at least two reference signals per sector. In one embodiment, four reference signals per sector are present. A further design consideration may be that the set of reference signals may be orthogonal in each sector of a given cell. The set of reference signals may also be orthogonal in all sectors adjacent to a given sector. If the reference signals are orthogonal and the reference signals are known to adjacent sectors, a best minimum mean square receiver may be designed and implemented.

For those reference signals that are not in adjacent sectors, or which are not orthogonal, another design consideration may be that these reference signal are minimally correlated, with approximately the same correlation, and approach (if not meet) the Welch Bound. Sets of sequences that approach or meet the Welch Bound may denote a tight frame, where each vector possesses a unit norm, i.e., ∥X_(n)∥₂≡1. A further design consideration is the set of reference signals may also have a Peak to Average Power Ratio (PAPR) that approaches (if not equal) to 1. The PAPR may be defined as, for a sequence vector c as:

$\begin{matrix} {{ = \frac{{c}_{\infty}^{2}}{c^{H}c}},} & \left( {{Equation}\mspace{14mu} 1} \right) \end{matrix}$

where ∥c∥_(∞) ² denotes the square maximum modulus component of c and where ( )^(H) denotes a conjugate transpose.

Another example of a design consideration may be that amongst subsets of sequences with orthogonal elements, each element may be a cyclic shift of another element. This property may be useful to provide robust performance if a transmission system which transmits a cyclic prefix for multipath elimination encounters multipath components with a delay spread greater than the cyclic prefix length. An additional design consideration is that in a system where multiple bandwidths are employed simultaneously, the set of reference signal sequences may be recursively generated from a base sequence.

In one embodiment, the amount of reference signal space (time and frequency resources) may be exactly large enough. For example, the basic unit of bandwidth allocation may allow for 19 or any larger prime number of reference signals available for two reference signals per sector. In a further example, the basic unit of bandwidth allocation may allow for 37 or any larger prime number of reference signals for four reference signals per sector. As in this case, if the amount of reference signal space is exactly large enough, Zadoff-Chu sequences may be taken as the reference sequences as they meet the design considerations previously described. However, such resource availability or sequence numerology may not be plausible. The present systems and methods provide an algorithm for designing reference signals based on alternating projections when such resources or sequence numerology are not available. These same reference signals may also be used to code modulate (or cover) data such as CQI and ACK/NACK information.

FIG. 1 illustrates an exemplary wireless communication system 100 in which embodiments may be practiced. A base station 102 is in wireless communication with a plurality of user devices 104 (which may also be referred to as mobile stations, subscriber units, access terminals, etc.). A first user device 104 a, a second user device 104 b, and an Nth user device 104 n are shown in FIG. 1. The base station 102 transmits data to the user devices 104 over a radio frequency (RF) communication channel 106.

As used herein, the term “OFDM transmitter” refers to any component or device that transmits OFDM signals. An OFDM transmitter may be implemented in a base station 102 that transmits OFDM signals to one or more user devices 104. Alternatively, an OFDM transmitter may be implemented in a user device 104 that transmits OFDM signals to one or more base stations 102.

The term “OFDM receiver” refers to any component or device that receives OFDM signals. An OFDM receiver may be implemented in a user device 104 that receives OFDM signals from one or more base stations 102. Alternatively, an OFDM receiver may be implemented in a base station 102 that receives OFDM signals from one or more user devices 104.

FIG. 2 illustrates some characteristics of a transmission band 208 of an RF communication channel 206 in accordance with an OFDM-based system. As shown, the transmission band 208 may be divided into a number of equally spaced sub-bands 210. As mentioned above, a sub-carrier carrying a portion of the user information is transmitted in each sub-band 210, and every sub-carrier is orthogonal with every other sub-carrier.

FIG. 3 illustrates communication channels 306 that may exist between an OFDM transmitter 312 and an OFDM receiver 314 according to an embodiment. As shown, communication from the OFDM transmitter 312 to the OFDM receiver 314 may occur over a first communication channel 306 a. Communication from the OFDM receiver 314 to the OFDM transmitter 312 may occur over a second communication channel 306 b.

The first communication channel 306 a and the second communication channel 306 b may be separate communication channels 306. For example, there may be no overlap between the transmission band of the first communication channel 306 a and the transmission band of the second communication channel 306 b.

In addition, the present systems and methods may be implemented with any modulation that utilizes multiple antennas/MIMO transmissions. For example, the present systems and methods may be implemented for MIMO Code Division Multiple Access (CDMA) systems, Time Division Multiple Access (TDMA) systems, Discrete Fourier Transform (DFT) Spread OFDM systems, etc.

FIG. 4 is a diagram 400 illustrating one embodiment of covering channel quality information (CQI) 408 and acknowledgement and negative acknowledgement reports 406 (ACK/NAK). The CQI 408 provides information relating to the quality of a channel being transmitted and the ACK/NAK reports 406 indicate whether or not a transmission was successfully received. As illustrated, the CQI 408 and the ACK/NAK 406 are multiplexed together. In one embodiment, the multiplexing scheme includes time multiplexing, code multiplexing, superposition multiplexing or some additional multiplexing scheme. A multiplexer (MUX) 416 may implement the multiplexing scheme. The CQI 408 and the ACK/NAK 406 are covered (code modulated) by an Optimized Zadoff-Chu Like (OZCL) sequence 410. In one embodiment, the OZCL sequence 410 covers the CQI 408 and the ACK/NAK 406 under the CDMA standard. In other words, the OZCL sequence 410 code division modulates the CQI 408 and the ACK/NAK 406.

An Inverse Fast Fourier Transform (IFFT) 404 may be applied to a covered signal 412. A transformed covered signal 414 may be transmitted. In one embodiment, the transformed covered signal 414 is transmitted to a base station. In addition, a reference signal 402 may also be transmitted. The reference signal 402 may be a sequence that is used to estimate a channel. In one embodiment, the OZCL sequence 410 and the reference signal 402 are identical. In other words, reference signals 402 used as uplink demodulation reference signals to estimate a channel may also be used to code modulate data, such as the CQI 408 and the ACK/NAK 406. Accordingly, the terms OZCL 410 sequence and reference signal 402 may be used interchangeably. Systems and methods for designing OZCL sequences 410/reference signals 402 are described below. The systems and methods described below design orthogonal (or near orthogonal) sequences that may be implemented in DFT-Spread OFDM systems. In addition, the designed sequences described below may be cyclic shift orthogonal sequences.

FIG. 5 illustrates a block diagram 500 of certain components in an embodiment of a transmitter 504. Other components that are typically included in the transmitter 504 may not be illustrated for the purpose of focusing on the novel features of the embodiments herein.

Data symbols may be modulated by a modulation component 514. The modulated data symbols may be analyzed by other subsystems 518. The analyzed data symbols 516 may be provided to a reference processing component 510. The reference processing component 510 may generate a reference signal 508 that may be transmitted with the data symbols. The modulated data symbols 512 and the reference signal 508 may be communicated to an end processing component 506. The end processing component 506 may combine the reference signal 508 and the modulated data symbols 512 into a signal. The transmitter 504 may receive the signal and transmit the signal to a receiver through an antenna 502.

FIG. 6 is a block diagram 600 illustrating one embodiment of components used to design an OZCL sequence 410 used to code modulate data. In one embodiment, an initial sequence retriever 602 may obtain initial sequences. A first sequence projection component 604 may project an obtained sequence set to a nearest tight frame. A subsets projection component 606 may be implemented to project subsets of the nearest tight frame to one or more orthogonal matrices. In one embodiment, a matrices projection component 608 may project the one or more orthogonal matrices to a nearest circulant matrix. In one embodiment, a second sequence projection component 610 may project each of the obtained sequence sets onto a minimum Peak to Average Power Ratio (PAPR) vector. An iterator 612 may be utilized to iterate the steps performed by the first sequence projection component 604, the subsets projection component 606, the matrices projection component 608 and the second sequence projection component 610. The iterator 612 may iterate these steps T times. A sequence output component 614 may output the sequences after T iterations have been executed.

FIG. 7 is a flow diagram illustrating one embodiment of a method 700 for designing an OZCL sequence 410. The method 700 may be implemented by the components discussed previously in regards to FIG. 6. In one embodiment, the existence of a fixed point of a MIMO signal is verified 702. For example, for a set of Zadoff-Chu sequences of lengths 19 or 37, the Zadoff-Chu sequences may be returned and used as an input to design the OZCL sequence 410. A nearest tight frame to one or more structured vectors may be obtained 704. One or more structured vectors may then be obtained 706 from the previously computed nearest tight frame. The one or more structured vectors may be projected 708 onto the space of circulant matrices and one or more classes of matrices may be outputted 710. The outputted matrices may indicate the design of the OZCL sequence 410 used to code modulate 712 data. The design of the sequence may indicate that the OZCL sequence 410 be hopped in order to randomize the effects of sequence cross-correlation. In one embodiment, the data includes the CQI information 408 and the ACK/NAK reports 406. The data may be code modulated 712 following the CDMA standard. The code modulated data may be transmitted in a DFT-Spread OFDM system.

FIG. 8 is a flow diagram 800 illustrating a further embodiment of an algorithm that may be utilized to design a sequence, such as an OZCL sequence 410 or a reference signal. As previously mentioned, the reference signal and the OZCL sequence may be identical. In one embodiment, a first matrix is provided 802. The first matrix may be on the unit hyper-sphere. Sequences may be on the unit hyper-sphere to ensure a satisfactory constant envelope property initially. The first matrix may include zero components if the starting sequence is on the unit hyper-sphere. A second matrix may be computed 804. The second matrix may be a nearest tight frame to the first matrix. The nearest tight frame may include an estimation of the first matrix.

In one embodiment, a third matrix may be computed 806. The third matrix may be the closest matrix with a minimum peak to average power ratio to the second matrix. The third matrix may also be expanded and a fourth matrix may be computed 808 from the expansion. In one embodiment, a fifth matrix is computed 810 that is a nearest circulant matrix to the fourth matrix. The first matrix may be set 812 to the fifth matrix. In other words, the first matrix may be assigned the included in the fifth matrix. The fourth matrix and the fifth matrix may be outputted 814. In addition, a maximum inner product of the fourth and fifth matrices may also be outputted 814. The fourth matrix and the fifth matrix may indicate the design of a sequence, such as the OZCL sequence 410. Data may be code modulated 816 using the sequence indicated by the fourth matrix and the fifth matrix. In one embodiment, the data includes the CQI information 408 and the ACK/NAK reports 406.

The following may represent steps taken to compute a correlated set of matrices that is the closest matrix with a minimum peak to average power ratio. A sequence of N column vectors {x_(n)}_(n=1) ^(N), x_(n) ε

^(d), d≦N, may be assigned as columns of a matrix X=[x₁ x₂ . . . x_(N)]. The matrix may be referred to as a frame. Each vector may have unit length, without any loss in generality. Block of K of these vectors may be grouped into a set of matrices, {X_(i)}_(i=1) ^(K) so that (with MK=N) X=[X₁ X₂ . . . X_(M)]. The correlation between vectors may be represented as <x_(k), x_(n)> which is the standard inner product in complex Euclidean d-space.

The Welch Bound is, for any frame, for k≠n:

$\begin{matrix} {{\max_{k \neq n}{< x_{k}}},{x_{n} > \geq \sqrt{\frac{N - d}{d\left( {N - 1} \right)}}}} & \left( {{Equation}\mspace{14mu} 2} \right) \end{matrix}$

A frame that meets or approaches the Welch Bound may be referred to as a tight frame. The design considerations previously mentioned imply that for any <x_(k), x_(n)> not in the same X_(i), <x_(k), x_(n)>≦α, where α is a constant determined by the Welch Bound provided above. If any matrix Z ε

^(d X N), is provided, the matrix that comes closest in distance (as measured in element-wise or Frobenius norm) may be given by α(Z Z^(H))^(1/2) Z. This condition may also enforce an orthnormality condition between rows of X, if an optimal X exists.

The design considerations previously mentioned also imply that X_(i)*X_(i)=I_(K); (with K≦d). In other words, each column in any X_(i) may be orthogonal to any other column in X_(i). The above may be repeated with the role of X above being assumed by X_(i) ^(H). Further, if as few as two sequences are required per cell (i.e., per matrix X_(i)), a “phase parity check” may be implemented to provide orthogonality between column vectors in X_(i) when there are zero entries in any column of X_(i). In other words, the phase of the zero components are chosen such that orthogonality if maintained once each column vector has minimal Peak to Average Power Ratio.

The following may illustrate steps taken to obtain the circulant matrix nearest to a given matrix. A matrix Z=[z₁ . . . z_(N)], may be provided, where each z_(i) is a column vector ε

^(N). A circulant matrix C=[c₀ . . . c_(N−1)], may be obtained that is closest in Frobenius (element-wise) norm to Z. In one embodiment, F may be given as the Discrete Fourier Transform (DFT) matrix:

$\begin{matrix} {F = \begin{bmatrix} 1 & 1 & \cdots & 1 \\ 1 & ^{{- j}\; 2{\pi/N}} & \cdots & ^{{- j}\; 2{{\pi {({N - 1})}}/N}} \\ \vdots & \vdots & ⋰ & \vdots \\ 1 & ^{{- j}\; 2{{\pi {({N - 1})}}/N}} & \cdots & ^{{- j}\; 2{\pi {({N - 1})}}{{({N - 1})}/N}} \end{bmatrix}} & \left( {{Equation}\mspace{14mu} 3} \right) \end{matrix}$

A diagonal “delay” matrix D may be defined as D=diag(1 e^(−j2π/N) e^(−j2π2/N) . . . e^(−j2π(N−1)/N)). For any ciculant matrix C, C=F^(H)ΛF, where Λ is the DFT of the sequence/vector c₀. In addition, it may be shown that c_(i+1 mod N)=F^(H)DF c_(i)=(F^(H)DF)^((i+1) mod N) c₀. Then

${{Z - C}}_{F}^{2} = {{\sum\limits_{i = 1}^{N}\; {{z_{i} - c_{i - 1}}}^{2}} = {\sum\limits_{i = 1}^{N}\; {{{z_{i} - {\left( {F^{H}{DF}} \right)^{({i - 1})}c_{0}}}}^{2}.}}}$

In one embodiment,

${\zeta = \begin{bmatrix} z_{1} \\ z_{2} \\ \vdots \\ z_{N} \end{bmatrix}},{{{and}\mspace{14mu} B} = \begin{bmatrix} I_{N} \\ {F^{H}{DF}} \\ \vdots \\ \left( {F^{H}{DF}} \right)^{N - 1} \end{bmatrix}}$

to minimize c₀, which uniquely determines C, c₀ is given by C₀=B⁺ ζ, where B⁺ is the Moore-Penrose pseudo-inverse of B. In other words, B⁺=(B^(H)B)⁻¹B^(H).

Matrices where the number of column vectors are not equal to the number of row vectors may be referred to as reduced rank matrices (Z has fewer than N columns). Modifications may be implemented to the recurrence relation c_(i+1 mod N)=F^(H)DF c_(i) and the forming of the appropriate matrix B. If only two vectors were required that were cyclic shifted three elements apart, then c₁=(F^(H)DF)³ c₀ and B may include the matrix elements I_(N) and (F^(H)DF)².

FIG. 9 is a flow diagram 900 illustrating a method of an algorithm that may be utilized to design an OZCL sequence 410. A matrix Z₀ ε

^(d X N), may be provided 902. In one embodiment, the matrix Z₀ is on the unit hyper-sphere with all non-zero components. The following may occur for t=1 to T.

In one embodiment, α(Z Z^(H))^(1/2) Z may be computed 904 and assigned to the matrix Y. This may result in the tight frame nearest to Z. The following constraints may be implemented. If zero entries exist in column vectors of Y, phases to their related components in Y may be added so that orthogonality is maintained. For m=1 to M, (α(W_(m) ^(H)W_(m))^(1/2)W_(m) ^(H))^(H) may be computed 906 and assigned to a vector V_(m). The matrix V=[V₁ V₂ . . . V_(M)] may be assembled.

In one embodiment, the max _(k≠n)<v_(k), v_(n)> may be computed. Further, a Q matrix may be computed 908 that is a nearest circulant matrix to V and max _(k≠n)<q_(k), q_(n)> may also be computed. A W matrix may be computed 910. The W matrix may be the closest matrix with minimum PAPR to Y. The W matrix may be expressed as W=[W₁ W₂ . . . W_(M)]. The Z matrix may be assigned 912 as the Q matrix. If a circulant matrix is not desired, the Z matrix may be assigned as the V matrix. In one embodiment, t is updated as t+1. The V matrix and the Q matrix may be outputted 914. In addition, max _(k≠n)<v_(k), v_(n)> and max _(k≠n)<q_(k), q_(n)> may also be outputted 914. The V and the Q matrices may indicate the design the OZCL sequence 410. Data may be code modulated 916 using the OZCL sequence 410 indicated by the V matrix and the Q matrix. In one embodiment, the data includes the CQI information 408 and the ACK/NAK reports 406.

FIG. 10 illustrates various components that may be utilized in a communications device 1002. The communications device 1002 may include any type of communications device such as a mobile station, a cell phone, an access terminal, user equipment, a base station transceiver, a base station controller, etc. The communications device 1002 includes a processor 1006 which controls operation of the communications device 1002. The processor 1006 may also be referred to as a CPU. Memory 1008, which may include both read-only memory (ROM) and random access memory (RAM), provides instructions and data to the processor 1006. A portion of the memory 1008 may also include non-volatile random access memory (NVRAM).

The communications device 1002 may also include a housing 1022 that includes a transmitter 1012 and a receiver 1014 to allow transmission and reception of data. The transmitter 1012 and receiver 1014 may be combined into a transceiver 1024. An antenna 1026 is attached to the housing 1022 and electrically coupled to the transceiver 1024. Additional antennas (not shown) may also be used.

The communications device 1002 may also include a signal detector 1010 used to detect and quantify the level of signals received by the transceiver 1024. The signal detector 1010 detects such signals as total energy, pilot energy, power spectral density, and other signals.

A state changer 1016 controls the state of the communications device 1002 based on a current state and additional signals received by the transceiver 1024 and detected by the signal detector 1010. The communications device 1002 may be capable of operating in any one of a number of states.

The various components of the communications device 1002 are coupled together by a bus system 1020 which may include a power bus, a control signal bus, and a status signal bus in addition to a data bus. However, for the sake of clarity, the various buses are illustrated in FIG. 10 as the bus system 1020. The communications device 1002 may also include a digital signal processor (DSP) 1018 for use in processing signals. The communications device 1002 illustrated in FIG. 10 is a functional block diagram rather than a listing of specific components.

Information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.

The various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.

The various illustrative logical blocks, modules, and circuits described in connection with the embodiments disclosed herein may be implemented or performed with a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array signal (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.

The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in a user terminal. In the alternative, the processor and the storage medium may reside as discrete components in a user terminal.

The methods disclosed herein comprise one or more steps or actions for achieving the described method. The method steps and/or actions may be interchanged with one another without departing from the scope of the present invention. In other words, unless a specific order of steps or actions is required for proper operation of the embodiment, the order and/or use of specific steps and/or actions may be modified without departing from the scope of the present invention.

While specific embodiments and applications of the present invention have been illustrated and described, it is to be understood that the invention is not limited to the precise configuration and components disclosed herein. Various modifications, changes, and variations which will be apparent to those skilled in the art may be made in the arrangement, operation, and details of the methods and systems of the present invention disclosed herein without departing from the spirit and scope of the invention. 

1. A method for using a numerical method to design a sequence for code modulating data,: the method comprising: determining an input multiple input multiple output signal; obtaining a nearest tight frame to one or more given structured vectors; obtaining one or more structured vectors from the nearest tight frame; projecting the one or more structured vectors onto the space of circulant matrices; outputting one or more classes of matrices that indicates the design of the sequence; and code modulating data using the designed sequence.
 2. The method of claim 1, wherein the data comprises channel quality information.
 3. The method of claim 1, wherein the data comprises acknowledgement reports and negative acknowledgement reports.
 4. The method of claim 1, wherein the code modulated data is orthogonal in a cell.
 5. The method of claim 1, wherein the designed sequence is identical to a sequence used for estimation of a channel.
 6. The method of claim 1, further comprising code modulating the data using Code Division Multiple Access (CDMA) implementations.
 7. The method of claim 1, wherein a set of sequences comprise a Peak to Average Power Ratio that approximates the value of one.
 8. The method of claim 7, wherein a set of sequences are recursively generated from a base sequence.
 9. The method of claim 1, further comprising transmitting the code modulated data in a Discrete Fourier Transform Spread Orthogonal Frequency Division Multiplexing system.
 10. The method of claim 1, further comprising hopping the designed sequence to reduce effects of cross-correlation with one or more additional sequences.
 11. The method of claim 1, wherein the designed sequence comprises a cyclic shift orthogonal sequence.
 12. A device that is configured to use a numerical method to design a sequence for code modulating data, the device comprising: a processor; memory in electronic communication with the processor; instructions stored in the memory, the instructions being executable to: determine an input multiple input multiple output signal; obtain a nearest tight frame to one or more given structured vectors; obtain one or more structured vectors from the nearest tight frame; project the one or more structured vectors onto the space of circulant matrices; output one or more classes of matrices that indicate the design of the sequence; and code modulate data using the designed sequence.
 13. The device of claim 12, wherein the data comprises channel quality information.
 14. The device of claim 12, wherein the data comprises acknowledgement reports and negative acknowledgement reports.
 15. The device of claim 12, wherein the code modulated data is orthogonal in a cell.
 16. The device of claim 12, wherein the designed sequence is identical to a sequence used for estimation of a channel.
 17. The device of claim 12, wherein the instructions are further executable to code modulate the data using Code Division Multiple Access (CDMA) implementations.
 18. The device of claim 12, wherein instructions are further executable to transmit the code modulated data in a Discrete Fourier Transform Spread Orthogonal Frequency Division Multiplexing system.
 19. The device of claim 12, wherein the instructions are further executable to hop the designed sequence to reduce effects of cross-correlation with one or more additional sequences.
 20. A computer-readable medium comprising executable instructions for using a numerical method to design a sequence for code modulating data, the instructions being executable to: determine an input multiple input multiple output signal; obtain a nearest tight frame to one or more given structured vectors; obtain one or more structured vectors from the nearest tight frame; project the one or more structured vectors onto the space of circulant matrices; output one or more classes of matrices that indicate the design of the sequence; and code modulate data using the designed sequence. 